In electronics and electric circuits, crosstalk effect is usually caused by inductive coupling and capacitive coupling between two wires that are very close to each other, which results in undesired signal interference. Specifically, capacitive coupling induces coupling current and inductive coupling induces coupling voltage, and both would be detrimental to the signal transmitted over the wires.
With the advances of VLSI technologies and the increase of the operating clock rates in VLSI circuits, the wires in long on-chip buses are very close to each other and induce large coupling capacitance and inductance. Thus, the crosstalk effect has to be taken into consideration in deep sub-micron designs when dealing with the propagation delay through long on-chip buses. FIG. 1 shows data bit patterns that would induce serious crosstalk and hence should be forbidden. As shown, the transmitted bits 11 are transmitted over two adjacent wires in a bus in two consecutive transmissions. When the transmitted bits 11 equal to one of the two forbidden transition patterns 12 as shown in FIG. 1, the crosstalk between the two wires is serious such that the propagation delay of the transmitted bits 11 over the bus wires cannot be easily shortened. Bus encoding is one of the several methods known in the literature that can be applied to mitigate the crosstalk effect and hence further increases the transmission throughput of the bus.
FIG. 2 shows the configuration of a first prior art of the bus encoding method for crosstalk avoidance known as “ground-shielding”, with which every two input data bits 21 are encoded into four coded bits 23 by the encoder 22. As can be seen in FIG. 2, the encoder 22 always generates bit 0 on the second and the fourth wires so that the forbidden transition patterns can be avoided. Furthermore, the coding rate (or throughput) of this first prior art encoding method is 0.5 since only half of the wires in the bus are used for transmitting data bits.
FIG. 3 shows the configuration of a second prior art of the bus encoding method for crosstalk avoidance when applied to a bus with four wires, which is disclosed by B. Victor and K. Keutzer in “Bus Encoding to Prevent Crosstalk Delay” in Proceedings of 2001 IEEE/ACM International Conference on Computer-Aided Design. As shown in FIG. 3, the first three data bits 001 of the input data bits 31 are encoded by the encoder 32 with the codebook 34 to generate four coded bits 0001 (from the bottom to the top) as the output bits 33; and then the last three data bits 110 of the input data bits 31 (or equivalently, the input data bits 311) are encoded by the encoder 321 with the codebook 34 to generate four coded bits 1101 (from the bottom to the top) as the output bits 331. Obviously, the coding rate of this application of the second prior art encoding method is 0.75.
It can be shown that the coding rate of the above second prior art encoding method is 0.6942 when the number of wires is sufficiently large, which is much greater than the coding rate 0.5 of the first prior art “ground shielding”. The main problem of this second prior art is the high implementation complexity of the encoder and the decoder.
In view of the low coding rate of the prior art bus encoding methods, it is necessary to develop a simple bus encoding method with high coding rate and low implementation complexity to achieve better system performance.